Generally, applications are installed on devices before they become operational on those devices. Installation entails creating support files for the applications, making entries in device registries, creating executables or dynamic linked libraries for the applications within the devices, and the like. Once properly installed the applications perform their designed services or operations on the devices.
Typically, an application can be downloaded from a remote network location onto a target device, it can be uploaded from removable media that is interfaced to the target device, or it can be pre-fabricated within memory or storage of the target device. Installation of the application usually occurs once the application is downloaded or uploaded within the target device. Alternatively, the application is installed when a target device is initially booted up for a first time. Sometimes an application is downloaded and the installation occurs once a user manually initiates the installation. This can occur as soon as the application is downloaded or it can occur at a time the user decides to manually initiate the installation.
In an enterprise environment, network administrators may desire to coordinate when a particular application is released and installed on a plurality of enterprise devices. If these devices are portable and disconnected when administrators attempt to install the particular application, then the administrators may have to manually address or put patches in place to account for such a scenario, since the administrators will be unable to effectuate installations on devices not connected to the network.
In addition, an enterprise application is generally downloaded to the target devices as the installation takes place. This means that administrators tie up significant network bandwidth to perform a coordinated mass download to the target enterprise devices. Thus, the enterprise network may be degraded or unavailable to users during scheduled enterprise installations.